package com.ly.emp.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ly.common.core.bean.R;
import com.ly.emp.bean.dto.HubTeamDTO;
import com.ly.emp.bean.dto.TeamResultOrderDTO;
import com.ly.emp.bean.vo.HubTeamWorkVO;
import com.ly.emp.bean.vo.HubTreeVO;
import com.ly.emp.entity.HubTeamWork;
import com.ly.emp.entity.TeamResultOrder;
import com.ly.emp.entity.TeamResultOrderDetail;

import java.util.List;

/**
 * 服务-积分登记-工分
 *
 * @author luoyun
 * @Date: 2023-05-25
 */
public interface IHubTeamResultOrderService {

    /**
     * 查询-list
     *
     * @param entity
     * @return
     */
    R getList(TeamResultOrderDetail entity);

    /**
     * 分页
     *
     * @param page
     * @return
     */
    R getPage(TeamResultOrder entity, Page<TeamResultOrder> page);

    /**
     * 获取工作类型
     *
     * @param entity
     * @return
     */
    R<List<HubTreeVO>> getWorkList(HubTeamWork entity);

    /**
     * 获取工作类型详情
     *
     * @param id
     * @return
     */
    R<HubTeamWorkVO> getWorkDetail(String id);

    /**
     * 工分登记保存
     *
     * @param dto
     * @return
     */
    R<String> save(TeamResultOrderDTO dto);

    /**
     * 获取工分登记详情
     *
     * @return
     */
    R<TeamResultOrderDTO> getWorkCheckInDetail(String id);

    /**
     * 获取工分登记详情-二维表
     *
     * @param dto
     * @return
     */
    R<TeamResultOrderDTO> getWorkCheckInDetailForTwoDimensional(HubTeamDTO dto);

    /**
     * 删除工单
     *
     * @return
     */
    R deleteResultOrder(String id);
}
